// .txt

beginzonescript;

variables;

short crime_tolerance = 2;
short last_abil;
short i;
short cutscene = 0;

body;

beginstate INIT_STATE;
	set_obj_act_at_dist(14,1);
		set_obj_act_at_dist(15,1);

	if (gf(79,7) == 3)
		sf(79,7,2);
		
	sf(79,1,1);
	
	sf(79,2,0);
	if (gf(60,9) >= 15)
		sf(79,2,1);
	
	if (gf(79,2) == 0) { // what mode?
		if (gf(12,2) >= 17) {
			sf(79,4,1);
			if (gf(100,2) > 2)
				sf(79,4,5); /// pwnt
			}	
		if (gf(42,12) == 12) {
			sf(79,4,2);
			if (gf(100,3) > 2)
				sf(79,4,5); /// pwnt
			}	
		if (gf(64,7) == 13) {
			sf(79,4,3);
			if (gf(100,4) > 2)
				sf(79,4,5); /// pwnt
			}	
		if (gf(34,9) == 11) {
			sf(79,4,4);
			if (gf(100,6) > 2)
				sf(79,4,5); /// pwnt
			}	
		}
		
	set_name(8,"Councilor Shema");
	set_name(11,"Councilor Nawaz");
	set_name(12,"Sage Taygen");
	set_name(14,"Councilor Sharissa");
	set_name(9,"Councilor Astoria"); 
	set_name(13,"General Alwan");

	set_name(23,"Akhari Blaze");

	add_range_to_group(8,14,1);
	add_range_to_group(15,22,2);
	set_name(1002,"Council Elite Guard");
	
	add_range_to_group(34,38,3);
	add_range_to_group(39,43,4);

	set_level(60,30);
	set_level(61,30);
	set_level(62,30);
	set_level(63,30);
	set_level(64,30);
	set_level(65,30);
	set_boss_level(60,2);
	set_boss_level(61,2);
	set_boss_level(62,2);
	set_boss_level(63,2);
	set_boss_level(64,2);
	set_boss_level(65,2);
	
	set_name(66,"Sentinel Trall");
	set_boss_level(66,1);
	set_name(67,"Sentinel Trall");
	set_boss_level(67,1);
	set_name(68,"Sentinel Trall");
	set_boss_level(68,1);
	set_name(69,"Sentinel Trall");
	set_boss_level(69,1);
	set_name(70,"Sentinel Kyshakk");
	set_boss_level(70,1);
	set_name(71,"Sentinel Kyshakk");
	set_boss_level(71,1);
	set_name(72,"Sentinel Vlish");
	set_level(72,28);
	set_boss_level(72,1);
	set_name(73,"Sentinel Vlish");
	set_level(73,28);
	set_boss_level(73,1);

	//if (get_sdf() > 0) {
		//make_zone_hostile();
		//}

	if (gf(79,2) == 0) {
		erase_char(23);
		erase_char(27);
		erase_char(29);
		erase_char(30);
		erase_char(33);
		erase_char(1003);
		erase_char(1004);
		erase_char(44);
		erase_char(45);
		erase_char(46);
		erase_char(47);
		erase_char(74);
		erase_char(75);
		erase_char(76);
		}
		else {
			erase_char(1001);
			erase_char(1002);
			
			set_terrain(43,30,91);
			set_terrain(43,31,92);
			set_terrain(43,32,91);
			set_terrain(43,33,92);
			set_terrain(43,34,91);

			set_terrain(27,29,0);
			set_terrain(27,30,0);
			set_terrain(27,31,0);
			set_terrain(27,32,0);
			set_terrain(27,33,0);
			set_terrain(27,34,0);
			set_terrain(27,35,0);
			set_terrain(27,36,0);
			set_terrain(27,37,0);
			set_terrain(27,38,0);
			
			kill_object(14,1);
			kill_object(15,1);
			}
			
	last_abil = get_current_tick();
	
	set_crime_tolerance(crime_tolerance);
	break;

beginstate EXIT_STATE;

break;

beginstate START_STATE;
	if (gf(79,2) == 0) { // shaper doors
		if (gf(100,16) < 2)
			sf(79,20,1);
			else sf(79,20,0);
		}

			
	// if party went crazy or dumb, hurt them
	if ((gf(79,2) == 1) && (gf(100,5) > 2))
		sf(100,26,1);
	if ((gf(79,2) == 0) && (gf(79,4) == 5))
		sf(100,26,2);
	if ((gf(79,2) == 0) && (gf(100,11) > 0))
		sf(100,26,2);
		
	// clear zone?
	//if ((zone_clear(ME) == FALSE) && (get_flag(,) > 0)) {
		//print_str_color("",2);
		//clear_zone(ME);	
		//}
		
	if ((get_crime_level() >= crime_tolerance) && (get_sdf(79,2) == 0)) {
		begin_talk_mode(5);
		}

	if (cutscene > 0) {
		if (cutscene == 1) {

			cutscene = 2;

			begin_talk_mode(10);
			}
		else if (cutscene == 2) {
			move_to_loc(0,37,37);
			move_to_loc(1,38,36);
			move_to_loc(2,38,38);
			move_to_loc(3,39,37);
			move_to_loc(4,39,35);
			move_to_loc(5,39,39);
			move_to_loc(6,40,36);
			move_to_loc(7,40,38);
			shift_view_to_char(pc_num());
			
			
			if (cutscene_can_proceed()) {
				set_facing(1000,1);
				shift_view_to_char(pc_num());
				cutscene = 3;
				}
			}
		else if (cutscene == 3) {
			cutscene = 4;
			begin_talk_mode(11);
			}
		else if (cutscene == 4) {
			move_to_loc(0,29,34);
			move_to_loc(1,29,33);
			move_to_loc(2,29,35);
			move_to_loc(3,30,32);
			move_to_loc(4,30,36);
			move_to_loc(5,30,31);
			move_to_loc(6,30,37);
			move_to_loc(7,31,34);
			shift_view_to_char(pc_num());
			
			
			if (cutscene_can_proceed()) {
				set_facing(1000,1);
				shift_view_to_char(pc_num());
				cutscene = 5;
				}
			}
		else if (cutscene == 5) {
			cutscene = 6;
			begin_talk_mode(12);
			}
		else if (cutscene == 6) {
			cutscene = 7;
			}
		else if (cutscene == 7) {
			sf(100,26,9 + gf(79,4));
			//sf(100,16,2);
			sf(100,23,1);
			cutscene = 8;
			}
		else if (cutscene == 8) {
			move_to_loc(0,48,33);
			move_to_loc(1,47,32);
			move_to_loc(2,47,34);
			move_to_loc(3,46,33);
			move_to_loc(4,46,31);
			move_to_loc(5,46,35);
			move_to_loc(6,45,32);
			move_to_loc(7,45,34);
			shift_view_to_char(pc_num());
			
			
			if (cutscene_can_proceed()) {
				set_facing(1000,5);
				shift_view_to_char(pc_num());
				cutscene = 9;
				}
			}
		else if (cutscene == 9) {
				sf(100,16,2);
				sf(79,20,0);
				toggle_quest(99,1);
				cutscene = 0;

				toggle_cutscene(0);
				shift_view_to_char(pc_num());
				
			}
	
		}


	// if (gf(,) == 0) {
	//	if (get_ran(1,0,100) < 10)
	//		give_char_text_bubble(,"");
	//	}
	
	if (((is_combat()) && (tick_difference(last_abil,get_current_tick()) > 0)) || ((is_group()) && (tick_difference(last_abil,get_current_tick()) > 5))) {
		last_abil = get_current_tick();
		
		if ((gf(79,13) > 0) && (gf(79,14) > 0) && (gf(79,15) > 0))
			sf(100,26,4); // win
		}
break;

beginstate 10;
	if ((gf(100,16) < 2) && (gf(79,2) == 0) && (cutscene == 0)) {
		cutscene = 1;
		char_clear_action(1000);
		toggle_quest(24,3);
		toggle_cutscene(1);
		}
		
break;

//	print_str("");
//	set_terrain_string_range(".",3);
//	set_terrain_string_range("The sign says - .",3);
